package com.huilian.iotbox.data.vo;

import com.huilian.iotbox.data.dto.DeviceDto;
import com.huilian.iotbox.data.po.DiscountPackage;
import com.huilian.iotbox.data.po.MerchantBanner;
import com.huilian.iotbox.data.po.MerchantStore;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author 谢洛涛
 * @date 2021/1/11 10:28
 */
@Data
public class MerchantStoreVo extends MerchantStore {
    /**
     * 套餐Id
     */
    private Integer packageId;
    /**
     * 设备总数
     */
    private Integer deviceCount;
    /**
     * 设备在线总数
     **/
    private Integer deviceOnLineCount;
    /**
     * 收款商户号
     */
    private String merchantId;
    /**
     * 店铺管理id
     */
    private Integer userId;
    /**
     * 充值余额
     */
    private Integer rechargeBalance;
    /**
     * 赠送余额
     */
    private Integer donateBalance;

    /**
     * 余币
     */
    private Integer surplusCoin;
    /**
     * 支付成功的金额
     */
    private BigDecimal successMoney;
    /**
     * 交易成功的总币
     */
    private Integer successCoin;

    private BigDecimal feeValue;
    private BigDecimal tiktokRate;
    private BigDecimal meiTuanRate;
    private String username;

    private String name;

    private String agencyName;

    private String agencyNo;

    /**
     * 门店数量
     */
    private Integer storeCount;

    private Integer aid;
    private Integer rid;
    private Integer rechargeStstus;

    private BigDecimal totalAmount;
    private Integer consume;

    private String content;

    private String tag;

    private List<DeviceVo> deviceVoList;

    private Integer stockQuantity;
    private Integer sale;
    private Integer state;


    private Integer mchStoreId;
    /**
     * 总营业额
     */
    private BigDecimal turnover;
    /**
     * 线上营业额
     */
    private BigDecimal turnoverOnLine;
    /**
     * 线下营业额
     */
    private BigDecimal turnoverOffline;
    /**
     * 投币总币
     */
    private Integer insertCoinTotal;
    /**
     * 线上投币
     */
    private Integer insertCoinOnLine;
    /**
     * 线下投币
     */
    private Integer insertCoinOffline;

    /**
     * 礼品消耗数
     */
    private Integer giftConsume;
    /**
     * 礼品成本总价
     */
    private BigDecimal giftCost;
    /**
     * 礼品出率
     */
    private BigDecimal giftOutRate;
    /**
     * 投币消费总数
     */
    private Integer consumeRecordCount;
    private List<MerchantStoreVo> merchantStoreVoList;

    private List<StatsGoodsExchangeVo> statsGoodsExchangeVoList;
    private Integer merchantStoreId;

    private Long merchantBannerId;
    private Integer merchantBannerStatus;

    private List<MerchantBanner> merchantBannersList;

    /**
     * 1元面额张数
     */
    private Integer oneYuanDenomination;
    /**
     * 5元面额张数
     */
    private Integer fiveYuanDenomination;
    /**
     * 10元面额张数
     */
    private Integer tenYuanDenomination;
    /**
     * 20元面额张数
     */
    private Integer twentyYuanDenomination;
    /**
     * 50元面额张数
     */
    private Integer fiftyYuanDenomination;
    /**
     * 100元面额张数
     */
    private Integer oneHundredYuanDenomination;
    /**
     * 兑币机出币总数=线上购买线下纸钞硬币+在线取币+在线核销
     */
    private Integer outCoinTotal;

    /**
     * 兑币机出币总数——>在线取币
     **/
    private Integer fetchMemberOutCoinTotal;

    private String deviceNo;

    private String storeName;

    private String deviceTypeName;

    private Integer totalDevice;

    /**
     * 分账商户个数
     */
    private Integer merchantCount;

    /**
     * 分账商户信息
     */
    private List<LedgerMerchantVo> ledgerMerchantVoList;

    /**
     * 该渠道是否支持分账
     */
    private Integer isSubAccount;
    private String phone;
    private List<ActivityVo> activityVoList;

    /**
     * 套餐列表
     */
    private List<DiscountPackage> discountPackages;

    /**
     * 新套餐列表
     */
    private List<CommodityStoreUpDownVo> commodityStorePackages;

    /**
     * 渠道最高分账率
     */
    private BigDecimal maximumRatio;

    /**
     * null/0未删除，1已删除
     */
    private Boolean fillInMemberInfo;
    /**
     * 零售价
     */
    private BigDecimal retailPrice;
    /**
     * 积分兑换价格
     */
    private Integer integralConversionPrice;
    /**
     * 彩票兑换价格
     */
    private Integer lotteryConversionPrice;
    /**
     * 游戏币兑换价格
     */
    private Integer coinConversionPrice;
    /***
     * 回收价格
     */
    private Integer recoveryPrice;
    /**
     * 游玩次数
     */
    private Integer totalNumberOfPlay;
    /**
     * 指定到期时间
     */
    private Date specifyDueTime;
    /**
     * 每天核销次数
     */
    private Integer everydayQuantityWrittenOff;
    /**
     * 限制每天核销次数
     */
    private Boolean quantityWrittenOff;
    /**
     * 限制每天核销次数
     */
    private Integer quantityWrittenOf;

    /**
     * 首次使用后开始计算过期天数
     */
    private Boolean resetExpirationDate;

    /**
     * 首次使用后多少天过期
     */
    private Integer numberOfDays;

    /**
     * 开启兑换
     */
    private Boolean openExchange;

    /**
     * 开启回收
     */
    private Boolean openRecovery;

    /**
     * 上下 架id
     */
    private Long commodityStoreUpDownId;

    /**
     * 游玩项目
     */
    private List<CommodityProjectRelevanceVo> checkPlayList;
    /**
     * 人民币充值余额
     */
    private BigDecimal moneyRechargeBalance;
    /**
     * 人民币赠送余额
     */
    private BigDecimal moneyDonateBalance;
    /**
     * 彩票
     */
    private Integer lottery;

    /**
     * 积分
     */
    private Integer integral;

    /**
     * 即将过期游戏币数
     */
    private Integer expiringCoins;

    /**
     * 即将过期游戏币 过期时间
     */
    private Date expiringTime;

    /**
     * 头像
     */
    private String headImgUrl;

    private List<TermOfValidityCoinVo> termOfValidityCoinVos;
    /**
     * 回收积分总数量
     */
    private Integer scanQRCodeDeductTotal;

    /**
     * 兑出积分数量
     */
    private Integer scanQRCodeDistributeTotal;
    /**
     * 是否为自提
     */
    private Boolean isSelfMention;
    /**
     * 是否为直邮
     */
    private Boolean isDirectMail;
    /**
     * 开启商城兑换
     */
    private Boolean integralMallSelfService;

    /**
     * 上架小程序积分商城
     */
    private Boolean integralMallTerminal;
    /**
     * 上架收银系统
     */
    private Boolean posTerminal;
    /**
     * 人民币总余额
     */
    private BigDecimal totalMoneyBalance;
    /**
     * 游戏币总余额
     */
    private Integer totalCoinBalance;

    private List<TermOfValidityCoinVo> rechargeTermOfValidityCoinVos;
    private List<TermOfValidityCoinVo> donateTermOfValidityCoinVos;
    private Integer ticketPackageType;
    private Integer amount;

    /**
     * 兑换总订单数量
     */
    private Integer orderCount;
    /**
     * 兑换 邮寄 订单数量
     */
    private Integer mailOrderCount;
    /**
     * 兑换 自提 订单数量
     */
    private Integer selfMentionOrderCount;
    /**
     * 商家收入积分
     */
    private Integer incomeTotalIntegral;
    /**
     * 商家收入彩票
     */
    private Integer incomeTotalLottery;
    /**
     * 商家收入游戏币
     */
    private Integer incomeTotalGameCoin;
    /**
     * 客户兑换商品数量
     */
    private Integer incomeCommodityTotal;
    /**
     * 客户使用积分兑换商品数量
     */
    private Integer incomeCommodityIntegral;
    /**
     * 客户使用彩票兑换商品数量
     */
    private Integer incomeCommodityLottery;
    /**
     * 客户使用游戏币兑换商品数量
     */
    private Integer incomeCommodityGameCoin;
    /**
     * 商家支出积分
     */
    private Integer expendTotalIntegral;
    /**
     * 商家回收商品数量
     */
    private Integer expendCommodityTotal;
    /**
     *
     */
    private Integer memberCount;

    /**
     * 客户电话
     */
    private String serviceMobilePhone;

    /**
     * 抖音店铺定位ID
     */
    private String douYinPoiId;

    /**
     * 美团店铺ID
     */
    private String meiTuanOpenShopUuId;

    private BigDecimal dayQuota;

    private BigDecimal memberMinuteQuota;

    private Integer memberMinutePayCount;

    private BigDecimal memberHourQuota;

    private Integer memberHourPayCount;

    private BigDecimal memberDayQuota;

    private Integer memberDayPayCount;

    private String poiName;

    private String poiId;

    /**
     * 查询所有门闸设备
     */
    private List<DeviceVo> gateGateDeviceList;
    /**
     * 查询已经判定过的门闸设备
     */
    private List<CommodityProjectDeviceVo> bindGateGateDeviceList;

    private List<DeviceDto> deviceDtoList;

    private Integer mmsId;

    private Boolean openDouYinPlatformCommission;

    private Boolean openDouYinTradeCommission;

    private Boolean openMeiTuanTradeCommission;

    private BigDecimal douYinAccumulateCommission;

    private BigDecimal meiTuanAccumulateCommission;

    private BigDecimal waitDeductCommission;

    private Integer dedicatedWeChatApplet;

    private Integer commodityCount;

    /**
     * 双只龙，场地业务员ID
     */
    private String salesmanId;

    private String navWeChatAppId;

    private String measuringUnit;
    /**支付公司**/
    private String payCompanyCode;
}
